$(function () {
  // alert(1)
  var layer = layui.layer;

  var $image = $('#image');

  // options配置选项       声明常量
  const options = {
    //纵横比1:1
    aspectRatio: 1,
    //图片预览区
    preview: '.img-preview'
  }
  //调用裁剪方法-----创建裁剪区域
  $image.cropper(options);

  //点击上传按钮
  $('#btnChooseImage').on('click', function () {
    $('#file').click()
  });

  $('#file').on('change', function (e) {
    // chang是input框状态改变触发
    // target是指向事件实际触发的对象

    //files是原生dom中的伪数组对象
    //方法一：获取file表单中文件
    var fileList = $(this)[0].files;

    //方法二：获取file表单中文件
    // var fileList = e.target.files;
    if (fileList.length === 0) {
      return layer.msg('请用户选择图片')
    }

    var file = fileList[0];

    //Input URL对象是 HTML5 中的新对象。
    //通过URL.createObjectURL(blob)可以获取当前文件的一个内存URL
    //之前预览上传是用formdata传输图片到服务器，获取服务器返回的url地址，再讲url给图片的src
    var imgURL = URL.createObjectURL(file);

    $image
      .cropper('destroy') // 销毁旧的裁剪区域
      .attr('src', imgURL)
      .cropper(options)  // 重新初始化裁剪区域
  });

  //点击确认按钮
  $('#btnUpload').on('click', function () {
    //服务器默认只能上传字符串
    var dataURL = $image
      .cropper('getCroppedCanvas',
        {// 创建一个 Canvas 画布
          width: 100,
          height: 100
        })
      .toDataURL('image/png');
    //将 Canvas 画布上的内容，转化为 base64 格式的字符串




    //向服务器发送最新更改的头像
    $.ajax({
      method: 'post',
      url: '/my/update/avatar',
      data: {
        avatar: dataURL
      },
      success: function (res) {
        if (res.status !== 0) {
          return layer.msg('更换头像失败！')
        }
        layer.msg('更换头像成功！');

        //让服务器渲染最新获取的用户数据
        window.parent.getUserInfo();

      }
    })
  })









})

// $(function () {
//   var layer = layui.layer

//   // 1.1 获取裁剪区域的 DOM 元素
//   var $image = $('#image')
//   // 1.2 配置选项
//   const options = {
//     // 纵横比
//     aspectRatio: 1,
//     // 指定预览区域
//     preview: '.img-preview'
//   }

//   // 1.3 创建裁剪区域
//   $image.cropper(options)/////////////cropper添加的方法

//   // 为上传按钮绑定点击事件
//   $('#btnChooseImage').on('click', function () {
//     $('#file').click()
//   })

//   // 为文件选择框绑定 change 事件
//   $('#file').on('change', function (e) {
//     // 获取用户选择的文件
//     var filelist = e.target.files
//     if (filelist.length === 0) {
//       return layer.msg('请选择照片！')
//     }

//     // 1. 拿到用户选择的文件
//     var file = e.target.files[0]
//     // 2. 将文件，转化为路径
//     var imgURL = URL.createObjectURL(file)
//     // 3. 重新初始化裁剪区域
//     $image
//       .cropper('destroy') // 销毁旧的裁剪区域
//       .attr('src', imgURL) // 重新设置图片路径
//       .cropper(options) // 重新初始化裁剪区域
//   })

//   // 为确定按钮，绑定点击事件
//   $('#btnUpload').on('click', function () {
//     // 1. 要拿到用户裁剪之后的头像
//     var dataURL = $image
//       .cropper('getCroppedCanvas', {
//         // 创建一个 Canvas 画布
//         width: 100,
//         height: 100
//       })
//       .toDataURL('image/png') // 将 Canvas 画布上的内容，转化为 base64 格式的字符串
//     // 2. 调用接口，把头像上传到服务器
//     $.ajax({
//       method: 'POST',
//       url: '/my/update/avatar',
//       data: {
//         avatar: dataURL
//       },
//       success: function (res) {
//         if (res.status !== 0) {
//           return layer.msg('更换头像失败！')
//         }
//         layer.msg('更换头像成功！')
//         window.parent.getUserInfo()
//       }
//     })
//   })
// })
